#include <stdio.h>
int x = 1;
void main()
{
    // 函数的作用域
    int x = 2;
    printf("%i\n", x);

    int a = 12;

    // if代码块的作用域
    if (a == 12)
    {
        int b = 99;
        int a = 100; // 这里的a和外面的a不是同一个变量
        printf("%d %d\n", a, b);
    }
    // 超过作用域范围，变量b未定义
    // printf("%d\n", b);  // 出错
    // 和rust一样的块级作用域
    {
        int a = 88;        // 这里的a和外面的a不是同一个变量
        printf("%d\n", a); // 88
    }
    
    // for循环的作用域
    for (int a = 0; a < 10; a++)
    {
        printf("%d\n", a);
    }
    printf("%d\n", a);
}